<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	template="web/templates/ui.xhtml">

	<ui:define name="title">
		<h:outputText value="Carga de Registradores" />
	</ui:define>
	<ui:define name="sidebar">
		<div class="widget">
			<div class="title">
				<div class="inner">
					<h3>
						<h:outputText value="Menú" />
					</h3>
				</div>
			</div>
			<!-- MENU PERFIL ADMINISTADOR -->
			<ui:include src="menu.xhtml" />
		</div>
	</ui:define>
	<ui:define name="content">
		<div class="page-header">
			<h3>
				<h:outputText value="Registradores" />
			</h3>
		</div>
		<div class="subTitle">
			<ol class="breadcrumb">
				<li><a href="index.jsf"><span
						class="glyphicon glyphicon-home"></span></a></li>
				<li class="active">Carga de Registradores</li>
			</ol>
		</div>
		<p:dialog modal="true" widgetVar="statusDialog" header="Status" draggable="false" closable="false" resizable="false">
    		<p:graphicImage name="/demo/images/ajaxloadingbar.gif" />
		</p:dialog>
		<h:form id="formExcelErroresCargaResponsable">
		    <p:commandButton value="Descargar Plantilla" ajax="false">
		        <p:fileDownload value="#{cargaService.fileDownload}" />
		    </p:commandButton>
		    &nbsp;&nbsp;
		    <h:outputLink value="ExcelErroresCargaResponsableServlet" title="Exportar a Excel informaci&oacute;n" >
		        <f:param name="usuario" value="#{cargaService.usuario}" />
		        <p:outputLabel value="#{cargaService.mensajeErroresCargaResponsable}" />
		    </h:outputLink>
		</h:form>
		
		<h:form id="form" enctype="multipart/form-data">
			<h:inputHidden id="archivoProcesado" value="#{cargaService.archivoProcesado}" />
			<p:messages id="messages"  autoUpdate="true" />
			<div class="row">
				<div class="col-sm-12 form-group">
					<p:outputLabel id="lblCenso" value="Censo" for="cboCenso" />
					<h:selectOneMenu styleClass="form-control" required="true" requiredMessage="Debe Seleccionar un Censo." 
						id="cboCenso" name ="cboCenso" value="#{cargaService.cboCenso}" >
						<f:selectItem itemLabel="Seleccionar" itemValue=""	noSelectionOption="true" />
						<f:selectItems value="#{cargaService.listaCensos}" var="censo"	itemLabel="#{censo.nombre}" itemValue="#{censo.id}" />
						<p:ajax listener="#{cargaService.onCensoChange}" update="cargarArchivo" />
					</h:selectOneMenu>
				</div>
			</div>
			<div class="row">
				<div class="col-sm-12 form-group">
					<h:inputHidden id="cargaExcelId" value="#{cargaService.cargaExcelId}" />
					<p:fileUpload value="#{cargaService.file}" mode="simple" skinSimple="true" required="true" allowTypes="/(\.|\/)(xls?x|csv)$/" 
					label="Seleccionar Archivo"
					requiredMessage="Error: Seleccione archivo a procesar."/>
				</div>
			</div>
			<div class="btnAction row no-gutter">
				<div class="text-right">
						<p:commandButton id="cargarArchivo" value="Cargar Archivo" ajax="false" disabled="#{!cargaService.procesarArchivo}"
						styleClass="btn btn-success" icon="fa fa-bolt" iconPos="right" actionListener="#{cargaService.upload}" />
				</div>
			</div>
			
						<p:dataTable id="singleDT" var="datacargada"
							value="#{cargaService.listaCargados}"
							widgetVar="cargaResponsableTable"
							emptyMessage="No se han encontrado registros" rows="20"
							paginator="true"
							paginatorPosition="bottom"
							paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
							rowKey="#{datacargada.nroDocumento}"
							currentPageReportTemplate="Total Registros : {totalRecords}">
							<f:facet name="header">
					            Registradores a insertar
					        </f:facet>
							<p:column headerText="DNI">
								<h:outputText value="#{datacargada.nroDocumento}" />
							</p:column>
							<p:column headerText="Nombre">
								<h:outputText value="#{datacargada.nombreCompleto}" />
							</p:column>
							<p:column headerText="Ap. Paterno">
								<h:outputText value="#{datacargada.apellidoPaterno}" />
							</p:column>
							<p:column headerText="Ap. Materno">
								<h:outputText value="#{datacargada.apellidoMaterno}" />
							</p:column>
							<p:column headerText="Cargo">
								<h:outputText value="#{datacargada.cargo}" />
							</p:column>
							<p:column headerText="Teléfono">
								<h:outputText value="#{datacargada.telefono}">
								</h:outputText>
							</p:column>
							<p:column headerText="Email">
								<h:outputText value="#{datacargada.emailPersonal}">
								</h:outputText>
							</p:column>
						</p:dataTable>

					<div class="btnAction row no-gutter">
						<div class="text-right">
							<p:commandButton styleClass="btn btn-success" value="Procesar Archivo"  disabled="#{!cargaService.procesarArchivo}"
							icon="ui-menuitem-icon ui-icon fa fa-save" iconPos="right" 
							actionListener="#{cargaService.grabarCarga}" update=":form :formExcelErroresCargaResponsable">
									<p:confirm header="Confirmación" message="¿Está seguro de procesar la información cargada?" icon="ui-icon-alert" />
							</p:commandButton>
																
							<p:confirmDialog global="true" showEffect="fade">
								<p:commandButton value="Si" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
								<p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
							</p:confirmDialog>
						</div>
					</div>

			</h:form>
		
	</ui:define>
</ui:composition>